$(document).ready(function () {
    checkLogin();
    loginInit();
    dropOut();
    initProListHtml();
    delItemEvent();
    calculationTotal();
    checkClick();


    function checkClick() {
        Single();
        All();
        amount();
        function amount() {
            $(".control .plus").click(function () {
                var _num = $(this).siblings('#quantity');
                var num = _num.val();
                num++;
                _num.val(num);
                calculationTotal();
            });

            $(".control .less").click(function () {
                var _num =  $(this).siblings('#quantity');
                var num = _num.val();
                if (num > 1) {
                    num--;
                }
                _num.val(num);
                calculationTotal();
            });

            $('#quantity').keyup(function () {
                var _vm = $(this),
                    val = _vm.val();
                val = val.replace(/[^\d]/g, '').replace(/^0+/, '');
                if(val==''){
                    _vm.val(1);
                }else {
                    _vm.val(val);
                }
                calculationTotal();
            });
        }
        function All(){

            $('.start .wrap input,.end .wrap input').click(function(){
                if($(this).is(':checked')){
                    $('.wrap').css('background-image','url(images/select.png');
                    $('.wrap input').prop('checked',true);
                }else{
                    $('.wrap').css('background-image','url(images/no_select.png');
                    $('.wrap input').prop('checked',false);
                }
                calculationTotal();
            });

        }
        function Single(){

            $('.wrap input').click(function(){

                var toggle = $(this).is(':checked');

                if(toggle){
                    $(this).parent().css('background-image','url(images/select.png');
                    $(this).prop('checked',true);
                }else{
                    $(this).parent().css('background-image','url(images/no_select.png');
                    $(this).prop('checked',false);
                }
                calculationTotal();
            });

            $('.item .wrap input').click(function() {

                var num = $(this).parents('#stores').find('.item').length;
                var selectNum = $(this).parents('#stores').find('.item input:checked').length;

                if(selectNum<num){
                    $(this).parents('#stores').find('.shop .wrap').css('background-image','url(images/no_select.png');
                    $(this).parents('#stores').find('.shop .wrap input').prop('checked',false);
                }else{
                    $(this).parents('#stores').find('.shop .wrap').css('background-image','url(images/select.png');
                    $(this).parents('#stores').find('.shop .wrap input').prop('checked',true);
                }
                isAll();
                calculationTotal();
            });

            $('.shop .wrap input').click(function() {
                if($(this).is(':checked')){
                    $(this).parents('#stores').find('.item .wrap').css('background-image','url(images/select.png');
                    $(this).parents('#stores').find('.item .wrap input').prop('checked',true);
                }else{
                    $(this).parents('#stores').find('.item .wrap').css('background-image','url(images/no_select.png');
                    $(this).parents('#stores').find('.item .wrap input').prop('checked',false);
                }
                isAll();
                calculationTotal();
            });

            function isAll() {
                var all = $('#group .wrap input').length;
                var checked = $('#group .wrap input:checked').length;
                if(checked<all){
                    $('.start .wrap,.end .wrap').css('background-image','url(images/no_select.png');
                    $('.start .wrap input,.end .wrap input').prop('checked',false);
                }else {
                    $('.start .wrap,.end .wrap').css('background-image','url(images/select.png');
                    $('.start .wrap input,.end .wrap input').prop('checked',true);
                }
            }
        }
    }

    function calculationTotal() {
        var list = $('#group #stores');
        var total = 0;
        list.each(function (item) {
            var _vm = $(this);
            var isCheck = _vm.find('.check').prop('checked');
            if (isCheck){
                var num = _vm.find('#quantity').val();
                var price = _vm.find('.price').text();
                total += price * num;
            }
        });
        total = total.toFixed(2);
        $('#total,#sum').text(total);
    }

    function delItemEvent() {
        $('#group').on('click', '.del', function () {
            var _vm = $(this);
            var id = _vm.attr('data-id');
            var item = _vm.parents('#stores');
            item.remove();
            LsyStorage.removeItem('shopCar_' + id);
            calculationTotal();
        })
    }

    function initProListHtml() {
        var proList = getProList();
        var str = '';
        for (var i = 0; i < proList.length; i++) {
            str +=
                '<div id="stores">'
                +'<h3 class="shop"><label class="wrap"><input type="checkbox" checked></label>凌度旗舰店</h3>'
                +'<div class="item clearfix">'
                +'<label class="wrap"><input type="checkbox" class="check" checked></label>'
                +'<img src="images/3sylxkgg2j3d3dme6p25359eu2cyp6.jpg" alt="">'
                +'<div class="pro-info">'
                +'<a href="" class="name">'+ proList[i].title +'</a>'
                +'<p><span>7</span>支持7天无理由退款</p>'
                +'<b>包邮</b>'
                +'</div>'
                +'<div class="user-action clearfix">'
                +'<div class="unit-price">'
                +'<span>409.00</span>'
                +'<span class="price">'+ proList[i].price.toFixed(2) +'</span>'
                +'</div>'
                +'<div class="quantity">'
                +'<div class="control clearfix">'
                +'<span class="less">-</span>'
                +'<input type="text" value="'+ proList[i].num +'" id="quantity" maxlength="10">'
                +'<span class="plus">+</span>'
                +'</div>'
                +'</div>'
                +'<div class="amount">'
                +'<span>'+ (proList[i].price*proList[i].num).toFixed(2) +'</span>'
                +'<span>（商品已包邮）</span>'
                +'</div>'
                +'<div class="delete">'
                +'<a href="javascript:void(0)" class="del" data-id="'+ proList[i].id +'">删除</a>'
                +'</div>'
                +'</div>'
                +'</div>'
                +'</div>';
        }
        $('#group').html(str);
    }

    function getProList() {
        return LsyStorage.getArr('shopCar');
    }

    $(".sort").hover(function () {
        $(".nav-list").stop().slideDown();
    },function () {
        $(".nav-list").stop().slideUp();
    });
    $(".menu li").mouseover(function(){
        $(this).addClass('on').siblings().removeClass('on');
    });
});
